Lock-free Serializable Transactions

نویسندگان

  • Jeff Napper
  • Lorenzo Alvisi
چکیده

Software transactional memory (STM) provides access to shared data with transactional properties. Existing STM use linearizability as their correctness criterion, although serializability allows more freedom in reordering the operations of committable transactions. Serializable transactions thus provide for more concurrency than linearizable transactions. Specifically, serializability allows read operations to increase concurrency with multiple versions of data. We present the first serializable, lock-free software transactional memory. Our STM supports dynamic transactions, provides early failure indication, requires a single interface for both read-only and read-write transactions, keeps multiple versions of objects, and allows for disjoint-access parallelism—while our implementation relies only on existing lock-free data structures. We prove the lock-free progress guarantee of our STM, and that the set of committed transactions is one-copy serializable (serializable while appearing to have only one copy of the data).

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Starvation-Free Secure Multiversion Concurrency Control

Concurrency control is important for multilevel secure databases because a covert channel can be easily created through collaboration of multilevel transactions in most traditional concurrency control mechanisms. We, in this paper, propose a secure multiversion concurrency control mechanism. We present concepts of an invisible area and a t-lock to prevent retrieval anomaly and starvation of hig...

متن کامل

Ensuring Serializable Executions with Snapshot Isolation DBMS

Snapshot Isolation (SI) is a multiversion concurrency control that has been implemented by open source and commercial database systems such as PostgreSQL and Oracle. The main feature of SI is that a read operation does not block a write operation and vice versa, which allows higher degree of concurrency than traditional two-phase locking. SI prevents many anomalies that appear in other isolatio...

متن کامل

Serializable Snapshot Isolation in PostgreSQL

This paper describes our experience implementing PostgreSQL’s new serializable isolation level. It is based on the recently-developed Serializable Snapshot Isolation (SSI) technique. This is the first implementation of SSI in a production database release as well as the first in a database that did not previously have a lock-based serializable isolation level. We reflect on our experience and d...

متن کامل

Locking Timestamps Versus Locking Objects

We present multiversion timestamp locking (MVTL), a new genre of multiversion concurrency control algorithms for serializable transactions. The key idea behind MVTL is simple and novel: lock individual time points instead of locking objects or versions. After showing what a generic MVTL algorithm looks like, we demonstrate MVTL’s expressiveness: we present several simple MVTL algorithms that ad...

متن کامل

Alternative Correctness Criteria for Multiversion Concurrency Control and a Locking Protocol via Freezing

Concurrency control protocols based on multiversions have been used in some commercial transaction processing systems in order to provide the serializable executions of transactions. In the existing protocols, transactions are allowed to read only the most recent version of each data item in order to ensure the correct execution of transactions. However, this feature is not desirable in some ad...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006